﻿using App_1.Entites;
using App_1.RequestFeatures;
using App_1.ResponseType.Paging;

namespace App_1.Contracts
{
    public interface IPlayerRepository: IRepositoryBase<Player>
    {
        Task<List<Player>> GetAllPlayers();
        Player? GetPlayerById(Guid playerId);
        Player? GetPlayerWithCharacters(Guid playerId);
        void CreatePlayer(Player player);
        void UpdatePlayer(Player player);
        void DeletePlayer(Player player);

        PagedList<Player> GetPlayers(PlayerParameter parameter);
    }
}
